package day06;

import java.io.*;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

/**
 * 要求用户输入一个员工信息，格式为：
 * name,age,gender,salary,hiredate
 * 例如:
 * 张三,25,男,5000,2006-02-15
 * 然后将输入的员工信息解析成Emp对象。
 * 然后将该Emp对象的toString返回的字符串写入到文件中，该文件的
 * 名字为:name.emp,以上面的例子，那么该文件名为:张三.emp
 * 至少运行5次该程序，输入五个员工信息，并生成5个文件。

 * @author Bonnie
 *
 */
public class Test10 {
    private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    public static void main(String[] args) throws ParseException, IOException {
        System.out.println("输入员工信(格式：张三,25,男,5000,2006-02-15)");
        Scanner input = new Scanner(System.in);
        while (input.hasNext()){
            if (input.next() == "exit"){
                break;
            }
            String str = input.next();
            Emp emp = getEmp(str);
            File fname = new File("./Home_Work/src/day06/"+emp.getName()+".txt");
            cFile(fname,emp);
        }
        input.close();
    }

    private static Emp getEmp(String str) throws ParseException {
        String[] strs = str.split(",");
        String name = strs[0];
        int age = Integer.parseInt(strs[1]);
        String gender = strs[2];
        int salary = Integer.parseInt(strs[3]);
        Date hiredate = sdf.parse(strs[4]);
        return new Emp(name,age,gender,salary,hiredate);
    }

    private static void cFile(File fname,Emp emp) throws IOException {
        fname.createNewFile();
        FileWriter fw = new FileWriter(fname);
        fw.write(emp.toString());
        fw.close();
    }
}
